package com.whitedust.top100;

/**
 *
 * @author A
 * @since 2025/11/17 19:13
 */

public class Top95 {
    public int majorityElement(int[] nums) {
        int res = Integer.MAX_VALUE;
        int vote = 0;
        //依次遍历当没有最多数的时候，将第一个遇见的作为选举结果并记录票数
        //然后遇见不同的时候抵消一票，当票数为0时，重新选举
        for (int num : nums) {
            if (res == num) {
                vote++;
            } else if (vote == 0) {
                res = num;
                vote++;
            } else {
                vote--;
            }
        }
        return res;
    }

}
